package com.ego.service.impl;

import com.ego.commons.utils.FastDFSClient;
import com.ego.service.PicService;
import org.springframework.beans.factory.annotation.Value;
import org.springframework.stereotype.Service;
import org.springframework.web.multipart.MultipartFile;

import java.io.IOException;
import java.util.HashMap;
import java.util.Map;

@Service
public class PicServiceImpl implements PicService {

    //注入yml文件中的值
    @Value("${ego.fastdfs.nginx}")
    private String nginxHost;
    @Override
    public Map<String, Object> upload(MultipartFile file) {
        Map<String,Object> map=new HashMap<>();

        try {
         /*
        file.getInputStream() 获取图片流
        file.getOriginalFilename() 获取上传图片的名称。
        FastDFS 图片会被FastDFS重新命名，第二个参数主要意义扩展名。
         */
            String[] result = FastDFSClient.uploadFile(file.getInputStream(), file.getOriginalFilename());
            System.out.println(result[0]+"-------"+result[1]);
           /* System.out.println(result[0]+"-------"+result[1]);
           这就是返回的结果
            group1-------M00/00/00/wKgIgV5jrdGAVIj5AAXHrB-avaQ769.jpg*/
            map.put("error",0);
            map.put("url",nginxHost+result[0]+"/"+result[1]);
            return map;
        } catch (IOException e) {
            e.printStackTrace();
        }
        //如果报错,  返回失败
        map.put("error",1);
        map.put("message","上传失败!");
        return map;
    }
}
